|
 |
Applicazioni Software |
PROGETTO n° 01 - 6/9
[55 di 166] |
 |
La seconda fase si occupa di acquisire la
parte rimanente dell'informazione... |
| |
|
Commuta il
selettore sugli Switch "alti" |
 |
Si procede ora alla lettura dei rimanenti
contatti: naturalmente è necessario spostare il cursore del
multiplexer
74LS157 dall'altra parte, in modo da poter
collegare gli switch sw 7÷sw 4 (rispettivamente attaccati agli
ingressi di tipo A del
'157, cioè ai suoi pin 2, 5, 11 e 14) ai
pin
11, 10, 12 e
13 del
connettore della parallela (ovviamente gli stessi di prima...), al fine di poterli poi
leggere sui corrispondenti bit 7, 6, 5,e 4
del Registro d'ingresso
0379H/0279H;
per questo l'ingresso di selezione A/B (pin 1 del selettore
'157) deve
essere forzato a 0: |
 |
Anche questa volta la scelta di scrivere sul Registro d'uscita
037AH/027AH
il
dato 00000001B (MOV
AL,01H)
forza a
0
i 7 bit
non coinvolti nel progetto (evento
ritenuto indifferente...) ma fissa a 1
il
solo
bit0,
necessario per il controllo. |
 |
Dunque
dentro il registro il
bit0
è forzato 1,
ma, poichè prima di arrivare sul
pin 1
della porta parallela il suo valore logico è
invertito internamente dall'hardware,
il piedino di controllo del selettore riceve effettivamente lo
0 necessario per
consentire la lettura dei
4 switch più significativi. |
 |
Si attiva naturalmente ancora il
piccolo ritardo
per assicurare l'assestamento elettronico del commutatore interno del
selettore. |
|
|
Lettura dei 4
Switch più significativi |
 |
La procedura è identica a quella della fase
precedente: il breve ritardo imposto rende stabili i dati da leggere sui 4
pin
11, 10, 12 e
13 del
connettore della parallela, per cui possono essere letti sul Registro d'ingresso
0379H/0279H. |
 |
Ora nei 4 bit più significativi di
AL è disponibile lo stato dei
4 switch più significativi, cioè sono già nella loro posizione naturale;
per rendere corretto il nuovo mezzo dato è sufficiente perciò
commutare da software il
valore logico del
bit7,
invertito internamente dall'hardware
dopo esser stato assunto dal
pin 11
della porta parallela: |
 |
Di questo si occupa ancora l'istruzione
XOR
di AL
con
80H, che rovescia il valore
logico del solo bit7
lasciando inalterati gli altri. |
 |
Per facilitare la prossima ricomposizione del
dato, è conveniente azzerare i 4 bit bassi, con la classica maschera prodotta
dall'istruzione
AND (AND
AL,0F0H). |
©
2001-2006 - Studio Tecnico
ing. Giorgio OBER
Tutti i diritti sono riservati
|